[INFO] fetching crate grammers-mtproto 0.5.0...
[INFO] checking grammers-mtproto-0.5.0 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate grammers-mtproto 0.5.0 into /workspace/builds/worker-3-tc1/source
[INFO] validating manifest of crates.io crate grammers-mtproto 0.5.0 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate grammers-mtproto 0.5.0
[INFO] finished tweaking crates.io crate grammers-mtproto 0.5.0
[INFO] tweaked toml for crates.io crate grammers-mtproto 0.5.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded grammers-tl-parser v1.1.1
[INFO] [stderr]   Downloaded grammers-crypto v0.5.1
[INFO] [stderr]   Downloaded glass_pumpkin v1.6.0
[INFO] [stderr]   Downloaded grammers-tl-gen v0.5.1
[INFO] [stderr]   Downloaded grammers-tl-types v0.5.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] da82e83fe1af80fbb327444affe122c0f48febd04993aaf35689db394aefeb47
[INFO] running `Command { std: "docker" "start" "-a" "da82e83fe1af80fbb327444affe122c0f48febd04993aaf35689db394aefeb47", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "da82e83fe1af80fbb327444affe122c0f48febd04993aaf35689db394aefeb47", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "da82e83fe1af80fbb327444affe122c0f48febd04993aaf35689db394aefeb47", kill_on_drop: false }`
[INFO] [stdout] da82e83fe1af80fbb327444affe122c0f48febd04993aaf35689db394aefeb47
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 140ef9db4bd561fa7c55ed19cdb3e114018292155ea065e953cb79493e7fffa6
[INFO] running `Command { std: "docker" "start" "-a" "140ef9db4bd561fa7c55ed19cdb3e114018292155ea065e953cb79493e7fffa6", kill_on_drop: false }`
[INFO] [stderr]    Compiling crc32fast v1.4.0
[INFO] [stderr]     Checking memchr v2.7.1
[INFO] [stderr]     Checking winnow v0.6.5
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]     Checking miniz_oxide v0.7.2
[INFO] [stderr]     Checking inout v0.1.3
[INFO] [stderr]     Checking getrandom v0.2.12
[INFO] [stderr]     Checking toml_datetime v0.6.5
[INFO] [stderr]     Checking serde_spanned v0.6.5
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking pbkdf2 v0.12.2
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]    Compiling grammers-tl-parser v1.1.1
[INFO] [stderr]     Checking flate2 v1.0.28
[INFO] [stderr]     Checking core2 v0.4.0
[INFO] [stderr]    Compiling grammers-tl-gen v0.5.1
[INFO] [stderr]    Compiling grammers-tl-types v0.5.1
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking toml_edit v0.22.6
[INFO] [stderr]     Checking glass_pumpkin v1.6.0
[INFO] [stderr]     Checking grammers-crypto v0.5.1
[INFO] [stderr]     Checking toml v0.8.10
[INFO] [stderr]     Checking grammers-mtproto v0.5.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: couldn't read tests/../../includes/check_deps_documented.rs: No such file or directory (os error 2)
[INFO] [stdout]  --> tests/deps.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | include!("../../includes/check_deps_documented.rs");
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the macro `include` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `grammers-mtproto` (test "deps") due to 2 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "140ef9db4bd561fa7c55ed19cdb3e114018292155ea065e953cb79493e7fffa6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "140ef9db4bd561fa7c55ed19cdb3e114018292155ea065e953cb79493e7fffa6", kill_on_drop: false }`
[INFO] [stdout] 140ef9db4bd561fa7c55ed19cdb3e114018292155ea065e953cb79493e7fffa6
[INFO] checking grammers-mtproto-0.5.0 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate grammers-mtproto 0.5.0 into /workspace/builds/worker-3-tc2/source
[INFO] validating manifest of crates.io crate grammers-mtproto 0.5.0 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate grammers-mtproto 0.5.0
[INFO] finished tweaking crates.io crate grammers-mtproto 0.5.0
[INFO] tweaked toml for crates.io crate grammers-mtproto 0.5.0 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 97031d6460f3b41a7c1f731b6ec58c385a5f0b67c6c272968cc38528d2077a71
[INFO] running `Command { std: "docker" "start" "-a" "97031d6460f3b41a7c1f731b6ec58c385a5f0b67c6c272968cc38528d2077a71", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "97031d6460f3b41a7c1f731b6ec58c385a5f0b67c6c272968cc38528d2077a71", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "97031d6460f3b41a7c1f731b6ec58c385a5f0b67c6c272968cc38528d2077a71", kill_on_drop: false }`
[INFO] [stdout] 97031d6460f3b41a7c1f731b6ec58c385a5f0b67c6c272968cc38528d2077a71
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a337536ccc69027a706ddaf9e3f1eb02f7ff36628e963fb06a5c939902ef5d0a
[INFO] running `Command { std: "docker" "start" "-a" "a337536ccc69027a706ddaf9e3f1eb02f7ff36628e963fb06a5c939902ef5d0a", kill_on_drop: false }`
[INFO] [stderr]    Compiling crc32fast v1.4.0
[INFO] [stderr]     Checking memchr v2.7.1
[INFO] [stderr]     Checking winnow v0.6.5
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]     Checking miniz_oxide v0.7.2
[INFO] [stderr]     Checking getrandom v0.2.12
[INFO] [stderr]     Checking inout v0.1.3
[INFO] [stderr]     Checking serde_spanned v0.6.5
[INFO] [stderr]     Checking toml_datetime v0.6.5
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking pbkdf2 v0.12.2
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]    Compiling grammers-tl-parser v1.1.1
[INFO] [stderr]     Checking flate2 v1.0.28
[INFO] [stderr]     Checking core2 v0.4.0
[INFO] [stderr]    Compiling grammers-tl-gen v0.5.1
[INFO] [stderr]    Compiling grammers-tl-types v0.5.1
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking toml_edit v0.22.6
[INFO] [stderr]     Checking glass_pumpkin v1.6.0
[INFO] [stderr]     Checking grammers-crypto v0.5.1
[INFO] [stderr]     Checking toml v0.8.10
[INFO] [stderr]     Checking grammers-mtproto v0.5.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/authentication.rs:309:46
[INFO] [stdout]     |
[INFO] [stdout] 309 |         buffer.copy_from_slice(&random_bytes[32..]);
[INFO] [stdout]     |                                              ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/authentication.rs:318:29
[INFO] [stdout]     |
[INFO] [stdout] 318 |             buffer = buffer[pos..].to_vec();
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/authentication.rs:325:29
[INFO] [stdout]     |
[INFO] [stdout] 325 |             buffer = buffer[pos..].to_vec();
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/authentication.rs:438:45
[INFO] [stdout]     |
[INFO] [stdout] 438 |                 buffer.copy_from_slice(&sha[4..20]);
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/authentication.rs:472:71
[INFO] [stdout]     |
[INFO] [stdout] 472 |     let mut plain_text_cursor = Cursor::from_slice(&plain_text_answer[20..]);
[INFO] [stdout]     |                                                                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/authentication.rs:480:42
[INFO] [stdout]     |
[INFO] [stdout] 480 |         hasher.update(&plain_text_answer[20..20 + plain_text_cursor.pos()]);
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/authentication.rs:508:46
[INFO] [stdout]     |
[INFO] [stdout] 508 |         buffer.copy_from_slice(&random_bytes[256..]);
[INFO] [stdout]     |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/authentication.rs:636:16
[INFO] [stdout]     |
[INFO] [stdout] 636 |         buffer[skip..].copy_from_slice(&gab_bytes);
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/manual_tl.rs:166:18
[INFO] [stdout]     |
[INFO] [stdout] 166 |         for _ in 0..len {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mtp/encrypted.rs:243:25
[INFO] [stdout]     |
[INFO] [stdout] 243 |             self.buffer[0..tmp.len()].copy_from_slice(&tmp)
[INFO] [stdout]     |                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mtp/encrypted.rs:260:25
[INFO] [stdout]     |
[INFO] [stdout] 260 |             self.buffer[HEADER_LEN..HEADER_LEN + CONTAINER_HEADER_LEN].copy_from_slice(&tmp);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mtp/plain.rs:112:53
[INFO] [stdout]     |
[INFO] [stdout] 112 |             rpc_results: vec![(MsgId(0), Ok(payload[20..20 + len as usize].into()))],
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/transport/abridged.rs:85:45
[INFO] [stdout]    |
[INFO] [stdout] 85 |             len[..3].copy_from_slice(&input[1..4]);
[INFO] [stdout]    |                                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/transport/abridged.rs:97:27
[INFO] [stdout]    |
[INFO] [stdout] 97 |         output.put(&input[header_len..header_len + len]);
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/transport/full.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 |             hasher.update(&output[buf_start..]);
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/transport/full.rs:115:41
[INFO] [stdout]     |
[INFO] [stdout] 115 |         output.extend_from_slice(&input[8..len - 4]);
[INFO] [stdout]     |                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/authentication.rs:309:46
[INFO] [stdout]     |
[INFO] [stdout] 309 |         buffer.copy_from_slice(&random_bytes[32..]);
[INFO] [stdout]     |                                              ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/authentication.rs:318:29
[INFO] [stdout]     |
[INFO] [stdout] 318 |             buffer = buffer[pos..].to_vec();
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/authentication.rs:325:29
[INFO] [stdout]     |
[INFO] [stdout] 325 |             buffer = buffer[pos..].to_vec();
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/authentication.rs:438:45
[INFO] [stdout]     |
[INFO] [stdout] 438 |                 buffer.copy_from_slice(&sha[4..20]);
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/authentication.rs:472:71
[INFO] [stdout]     |
[INFO] [stdout] 472 |     let mut plain_text_cursor = Cursor::from_slice(&plain_text_answer[20..]);
[INFO] [stdout]     |                                                                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/authentication.rs:480:42
[INFO] [stdout]     |
[INFO] [stdout] 480 |         hasher.update(&plain_text_answer[20..20 + plain_text_cursor.pos()]);
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/authentication.rs:508:46
[INFO] [stdout]     |
[INFO] [stdout] 508 |         buffer.copy_from_slice(&random_bytes[256..]);
[INFO] [stdout]     |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/authentication.rs:636:16
[INFO] [stdout]     |
[INFO] [stdout] 636 |         buffer[skip..].copy_from_slice(&gab_bytes);
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/manual_tl.rs:166:18
[INFO] [stdout]     |
[INFO] [stdout] 166 |         for _ in 0..len {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/manual_tl.rs:276:42
[INFO] [stdout]     |
[INFO] [stdout] 276 |         let _rpc_result_id = &rpc_result[0..4];
[INFO] [stdout]     |                                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/manual_tl.rs:277:35
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let _msg_id = &rpc_result[4..12];
[INFO] [stdout]     |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/manual_tl.rs:278:35
[INFO] [stdout]     |
[INFO] [stdout] 278 |         let gzipped = &rpc_result[12..rpc_result.len()];
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mtp/encrypted.rs:243:25
[INFO] [stdout]     |
[INFO] [stdout] 243 |             self.buffer[0..tmp.len()].copy_from_slice(&tmp)
[INFO] [stdout]     |                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mtp/encrypted.rs:260:25
[INFO] [stdout]     |
[INFO] [stdout] 260 |             self.buffer[HEADER_LEN..HEADER_LEN + CONTAINER_HEADER_LEN].copy_from_slice(&tmp);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1293:28
[INFO] [stdout]      |
[INFO] [stdout] 1293 |         assert_ne!(&buffer[0..8], [0, 0, 0, 0, 0, 0, 0, 0]);
[INFO] [stdout]      |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1295:28
[INFO] [stdout]      |
[INFO] [stdout] 1295 |         assert_eq!(&buffer[8..12], [seq_no, 0, 0, 0]);
[INFO] [stdout]      |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1297:28
[INFO] [stdout]      |
[INFO] [stdout] 1297 |         assert_eq!(&buffer[12..16], [body.len() as u8, 0, 0, 0]);
[INFO] [stdout]      |                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1299:28
[INFO] [stdout]      |
[INFO] [stdout] 1299 |         assert_eq!(&buffer[16..], body);
[INFO] [stdout]      |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1310:28
[INFO] [stdout]      |
[INFO] [stdout] 1310 |         assert_eq!(&buffer[0..8], [0, 0, 0, 0, 0, 0, 0, 0]);
[INFO] [stdout]      |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1313:28
[INFO] [stdout]      |
[INFO] [stdout] 1313 |         assert_ne!(&buffer[8..16], [0, 0, 0, 0, 0, 0, 0, 0]);
[INFO] [stdout]      |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1316:42
[INFO] [stdout]      |
[INFO] [stdout] 1316 |         ensure_buffer_is_message(&buffer[MESSAGE_PREFIX_LEN..], REQUEST, 1);
[INFO] [stdout]      |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1326:30
[INFO] [stdout]      |
[INFO] [stdout] 1326 |         let buffer = &buffer[MESSAGE_PREFIX_LEN..];
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1339:30
[INFO] [stdout]      |
[INFO] [stdout] 1339 |         let buffer = &buffer[MESSAGE_PREFIX_LEN..];
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1342:28
[INFO] [stdout]      |
[INFO] [stdout] 1342 |         assert_ne!(&buffer[0..8], [0, 0, 0, 0, 0, 0, 0, 0]);
[INFO] [stdout]      |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1345:28
[INFO] [stdout]      |
[INFO] [stdout] 1345 |         assert_eq!(&buffer[8..12], [4, 0, 0, 0]);
[INFO] [stdout]      |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1347:28
[INFO] [stdout]      |
[INFO] [stdout] 1347 |         assert_eq!(&buffer[12..16], [48, 0, 0, 0]);
[INFO] [stdout]      |                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1350:28
[INFO] [stdout]      |
[INFO] [stdout] 1350 |         assert_eq!(&buffer[16..20], MSG_CONTAINER_HEADER);
[INFO] [stdout]      |                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1352:28
[INFO] [stdout]      |
[INFO] [stdout] 1352 |         assert_eq!(&buffer[20..24], [2, 0, 0, 0]);
[INFO] [stdout]      |                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1355:42
[INFO] [stdout]      |
[INFO] [stdout] 1355 |         ensure_buffer_is_message(&buffer[24..44], b"Hey!", 1);
[INFO] [stdout]      |                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1358:42
[INFO] [stdout]      |
[INFO] [stdout] 1358 |         ensure_buffer_is_message(&buffer[44..], b"Bye!", 3);
[INFO] [stdout]      |                                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1371:30
[INFO] [stdout]      |
[INFO] [stdout] 1371 |         let buffer = &buffer[MESSAGE_PREFIX_LEN..];
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/mtp/encrypted.rs:1387:30
[INFO] [stdout]      |
[INFO] [stdout] 1387 |         let buffer = &buffer[MESSAGE_PREFIX_LEN..];
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mtp/plain.rs:112:53
[INFO] [stdout]     |
[INFO] [stdout] 112 |             rpc_results: vec![(MsgId(0), Ok(payload[20..20 + len as usize].into()))],
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/transport/abridged.rs:85:45
[INFO] [stdout]    |
[INFO] [stdout] 85 |             len[..3].copy_from_slice(&input[1..4]);
[INFO] [stdout]    |                                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/transport/abridged.rs:97:27
[INFO] [stdout]    |
[INFO] [stdout] 97 |         output.put(&input[header_len..header_len + len]);
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/transport/abridged.rs:112:22
[INFO] [stdout]     |
[INFO] [stdout] 112 |         let input = (0..n).map(|x| (x & 0xff) as u8).collect();
[INFO] [stdout]     |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/transport/abridged.rs:135:28
[INFO] [stdout]     |
[INFO] [stdout] 135 |         assert_eq!(&output[2..output.len()], &input[..]);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/transport/abridged.rs:143:28
[INFO] [stdout]     |
[INFO] [stdout] 143 |         assert_eq!(&output[5..], &input[..]);
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/transport/abridged.rs:162:34
[INFO] [stdout]     |
[INFO] [stdout] 162 |         transport.unpack(&packed[1..], &mut unpacked).unwrap();
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/transport/abridged.rs:187:34
[INFO] [stdout]     |
[INFO] [stdout] 187 |         transport.unpack(&packed[1..], &mut unpacked).unwrap();
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/transport/full.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 |             hasher.update(&output[buf_start..]);
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/transport/full.rs:115:41
[INFO] [stdout]     |
[INFO] [stdout] 115 |         output.extend_from_slice(&input[8..len - 4]);
[INFO] [stdout]     |                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/transport/full.rs:131:22
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let input = (0..n).map(|x| (x & 0xff) as u8).collect();
[INFO] [stdout]     |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/transport/full.rs:169:28
[INFO] [stdout]     |
[INFO] [stdout] 169 |         assert_eq!(&output[4..8], &[0, 0, 0, 0]);
[INFO] [stdout]     |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/transport/full.rs:170:28
[INFO] [stdout]     |
[INFO] [stdout] 170 |         assert_eq!(&output[8..8 + input.len()], &input[..]);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/transport/full.rs:171:28
[INFO] [stdout]     |
[INFO] [stdout] 171 |         assert_eq!(&output[8 + input.len()..], &[134, 115, 149, 55]);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/transport/full.rs:182:28
[INFO] [stdout]     |
[INFO] [stdout] 182 |         assert_eq!(&output[4..8], &[1, 0, 0, 0]);
[INFO] [stdout]     |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/transport/full.rs:183:28
[INFO] [stdout]     |
[INFO] [stdout] 183 |         assert_eq!(&output[8..8 + input.len()], &input[..]);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/transport/full.rs:184:28
[INFO] [stdout]     |
[INFO] [stdout] 184 |         assert_eq!(&output[8 + input.len()..], &[150, 9, 240, 74]);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/transport/intermediate.rs:81:22
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let input = (0..n).map(|x| (x & 0xff) as u8).collect();
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/transport/intermediate.rs:104:28
[INFO] [stdout]     |
[INFO] [stdout] 104 |         assert_eq!(&output[8..output.len()], &input[..]);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/transport/intermediate.rs:123:34
[INFO] [stdout]     |
[INFO] [stdout] 123 |         transport.unpack(&packed[4..], &mut unpacked).unwrap();
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read tests/../../includes/check_deps_documented.rs: No such file or directory (os error 2)
[INFO] [stdout]  --> tests/deps.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | include!("../../includes/check_deps_documented.rs");
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this error originates in the macro `include` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `grammers-mtproto` (test "deps") due to 2 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: 52 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a337536ccc69027a706ddaf9e3f1eb02f7ff36628e963fb06a5c939902ef5d0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a337536ccc69027a706ddaf9e3f1eb02f7ff36628e963fb06a5c939902ef5d0a", kill_on_drop: false }`
[INFO] [stdout] a337536ccc69027a706ddaf9e3f1eb02f7ff36628e963fb06a5c939902ef5d0a
